導讀:有個(gè)朋友問(wèn):用photoshop修改圖片保存為pNG格式,有透明部分,但是上傳后透明部分變成黑色。如何不變成黑色?然后我就讓她換成GIF格式試試,也不行,然后讓她把png-24改成png-8,結果可以
發(fā)表日期:2018-10-25
文章編輯:興田科技
瀏覽次數:12854
標簽:
有個(gè)朋友問(wèn):用photoshop修改圖片保存為pNG格式,有透明部分,但是上傳后透明部分變成黑色。如何不變成黑色?然后我就讓她換成GIF格式試試,也不行,然后讓她把png-24改成png-8,結果可以了。然后我在尋找答案的過(guò)程中,覺(jué)得這些圖片格式在網(wǎng)頁(yè)設計中經(jīng)常用到,所以有了此文。
pNG圖片格式特點(diǎn):
png這種圖片格式包括了許多子類(lèi),但是在實(shí)踐中大致可以分為256色的png和全色的png,你完成可以用256色的png代替gif,用全色的png代替jpeg,png是完全支持alpha透明的(透明,半透明,不透明),盡管有兩個(gè)怪異的現象(在ie6下)。
png是一種無(wú)損耗的圖像格式,這也意味著(zhù)你可以對png圖片做任何操作也不會(huì )使 得圖像質(zhì)量產(chǎn)生損耗。這也使得png可以作為jpeg編輯的過(guò)渡格式。
pNG在ie中的怪異表現:
IE6以下的瀏覽器支持pNG8的索引透明,但圖片必須為全透明,半透明的png8在瀏覽器下顯示為全透明。
Alpha透明的全色pNG(png32)在ie6中會(huì )出現背景顏色(通常是灰色)。
由上面可以總結:
(a)全透明的png8可以在任一瀏覽器正常顯示(就像gif一樣)。半透明的png8在除了ie6及其以下的瀏覽器下錯誤的顯示成全透明,其它瀏覽器都能正常顯示半透明。這個(gè)bug并不需要特殊對待,因為在不支持半透明的瀏覽器下只是顯示為全透明,對用戶(hù)體驗影響不大,它反而是透明gif的加強版。
(b)第二個(gè)bug沒(méi)有什么好的方法解決,只能通過(guò)(AlphaImageLoader濾鏡和htc)方法來(lái)處理。
更多關(guān)于pNG:
pNG8
256色pNG的別名,無(wú)損格式,體積最小,但最多只支持256色
pNG24
全色pNG的別名,除了png8的特點(diǎn),理論上可以存儲2的24次方種顏色,但ie6之前的版本對此格式兼容有問(wèn)題
pNG32
全色pNG的別名,除了以上的特點(diǎn)外,體積稍大
相比GIF
pNG 8除了不支持動(dòng)畫(huà)外,pNG8有GIF所有的特點(diǎn),但是比GIF更加具有優(yōu)勢的是它支持alpha透明和更優(yōu)的壓縮。所以,大多數情況下,你都應該用pNG8不是GIF(除了非常小的圖片GIF會(huì )有更好的壓縮外)。
相比JpEG
JpEG比全色pNG具有更加好的壓縮,因此也使得JpEG適合照片,但是編輯JpEG過(guò)程中容易造成質(zhì)量的損失,所以全色pNG適合作為編輯JpEG的過(guò)渡格式。
到底是png24 Alpha透明還是png32 Alpha透明?這個(gè)可能跟每個(gè)人使用切圖軟件有關(guān)。
1photoshop
1)只能導出布爾透明(全透明或者全不透明)的pNG8。
2)能導出alpha透明(全透明,全不透明,半透明)的pNG24。
3)不能導出pNG32。
2Fireworks
1)既能導出布爾透明的pNG8,也能導出alpha透明的pNG8,半透明的png8在除了ie6及其以下的瀏覽器下錯誤的顯示成全透明。
2)能導出pNG24,但是和jpeg差不多,不能透明。
3)能導出alpha透明的pNG32。
應該說(shuō)pNG24和pNG32是一樣,(The difference between pNG24 and pNG32)一文中指出pNG32中每個(gè)像素不僅存儲了24位真彩信息還存儲了8位alpha通道。所以fw導出pNG32不用選擇透明,而ps導出 pNG24時(shí)是要勾選透明度的,這時(shí)候的pNG24應該就轉化成了pNG32了吧。
pNG8與pNG24的區別:
pNG-8和pNG-24,其最大的區別不是顏色位的區別,而是存儲方式不同;
pNG-8 色盤(pán)索引、調色板中一位透明值、不支持阿爾法通道的半透明,存儲格式中每個(gè)像素無(wú)透明度的數據塊定義;pNG-8是用8位索引值來(lái)在調色盤(pán)中索引一個(gè)顏色,因為一個(gè)索引值的最大上限為2的8次方既128,故調色盤(pán)中顏色數最多為128種,所以該文件格式又被叫pNG-8128仿色。
pNG-24 無(wú)調色板、支持阿爾法通道的半透明、每個(gè)點(diǎn)陣都有透明度的定義,最低32位真彩色;是pNG-24是用24位來(lái)保存一個(gè)像素值,是真彩色。
pNG-8 和 gif 有一些相似之處,模式都是索引顏色,只支持像素級的純透明,不支持 alpha 透明。我們通常說(shuō)的“IE6 不支持 pNG 透明”,是指不支持 pNG-24 的透明(將透明區域顯示為灰色)。
pNG的使用技巧
pNG的格式和透明度
這個(gè)Fireworks會(huì )比較清楚,打開(kāi)Fireworkd優(yōu)化面板,可以清楚看到png有3種不同深度的格式:png8、png24、png32。
其中,在優(yōu)化面板選擇png8,可發(fā)現png8包括不透明、索引色透明、alpha透明3種格式。
pNG8
8位的png最多支持256(2的8次方)種顏色,8位的png其實(shí)8支持不透明、索引透明、alpha透明。
pNG24
支持2的24次方種顏色,表現為不透明。
pNG32
支持2的32次方種顏色,32位是我們最常使用的格式,它是在png在24位的png基礎上增加了8位的透明信息,支持不同程度的半透效果。
其實(shí)pNG8的3種格式不透明、索引透明、alpha透明,正好把png的所有格式都歸類(lèi)好了:
『png 不透明』格式
『png 索引透明』格式
『png alpha透明』格式
『pNG 不透明』格式
說(shuō)到不透明,就像jpg格式一樣,『png 不透明』只能為不透明,代表格式有:『png8 不透明』和『png24』,導出軟件有:photoshop、Fireworks。不推薦使用『png 不透明』格式,建議用jpg圖片來(lái)代替它。
可能會(huì )有同學(xué)會(huì )問(wèn)為什么png24是不透明的,我使用photoshop導出來(lái)的就是png24啊?
png24實(shí)際為不透明圖片
打開(kāi)photoshop,任意打開(kāi)一個(gè)帶透明的psd文件,存儲為web所有格式(ctrl+shift+alt+s),如下面板所示:
不勾選透明度單選框,圖片的透明背景會(huì )被默認的白色填充
導出來(lái)的png圖片深度為24位,圖片為不透明,表現跟jpg圖片相似
如果勾選了透明度(alpha通道),導出深度為32位的透明圖片
從photoshop存儲為web所有格式面板中這樣理解,png24深度其實(shí)為24位,再勾選上8位的alhpa通道,24+8=32,即『png32』 = 『png24+alpha』,這也許是photoshop軟件開(kāi)發(fā)者不添加png32位格式的原因,下圖為photoshop存儲為web所有格式界面的圖片格式選擇,并沒(méi)有png32位的選項~
『pNG 索引透明』格式
說(shuō)到索引顏色透明,我們可以了解下什么是索引顏色,『png 索引透明』代表格式有『png8 索引透明』,導出軟件有:photoshop、Fireworks,它的特點(diǎn)總結如下:
挑選一副圖片中最有代表性的若干種顏色(通常不超過(guò)256種)
只能為不透明或全透明
文件體積小
帶有雜邊鋸齒
支持IE6
如何使用photoshop導出『png8 索引透明』
使用photoshop,存儲為web所有格式,按照如下圖片的紅色邊框配置,可導出png8索引透明
注:使用photoshop導出『png8 索引透明』的效果比Fireworks導出的效果良好,這里不介紹使用Fireworks導出『png8 索引透明』
『png8 索引透明』產(chǎn)生雜邊鋸齒原因
『png8 索引透明』只有透明索引顏色,沒(méi)有半透明索引顏色,下圖左側為帶半透明像素的圖片,在瀏覽器中打開(kāi)不會(huì )有鋸齒,而右側圖片為全透明或不透明的像素,在瀏覽器打開(kāi)后有鋸齒。
由于『png8 索引透明』沒(méi)有半透明索引顏色,使用photoshop導出時(shí),原有的半透明轉化為不透明,從而產(chǎn)生鋸齒。
如何避免『png8 索引透明』的雜邊鋸齒
方法:設置雜邊與背景色顏色一致可達到視覺(jué)上透明。
相信不難理解,利用雜邊與背景色一致,可以來(lái)滿(mǎn)足視覺(jué)上的透明,缺點(diǎn)是只能適應一種背景色,在其它背景色下同樣會(huì )產(chǎn)生雜邊。
怎么設置呢,打開(kāi)photoshop,在存儲為web格式面板中進(jìn)行如下操作,在雜邊選項中選擇與背景色一致的顏色。
『pNG Alpha透明』格式
說(shuō)到alpha透明,我們可以了解下什么是alpha通道,『png alpha透明』代表格式有『png8 alpha透明』和『png32』,導出軟件
Fireworks,它的特點(diǎn)總結如下:
一個(gè)8位的灰度通道,該通道用256級灰度來(lái)記錄圖像中的透明度信息,定義透明、不透明和半透明區域
支持全透明和半透明
『png8 alpha透明』文件體積小
『png8 alpha透明』在IE6下有毛邊
如何使用Fireworks導出『png8 alpha透明』
Firewoks中,在優(yōu)化面板,按照如下圖片的紅色邊框配置,可導出png8 alpha透明。
注:Firewoks支持導出『png8 alpha透明』,photoshop不支持導出『png8 alpha透明』
手機端選擇哪種png
說(shuō)到手機,考慮流量的問(wèn)題是必不可少的,所選png需要滿(mǎn)足體積小和視覺(jué)效果良好,那么哪種png格式符合這2個(gè)要求呢?做個(gè)實(shí)驗吧~
不同png格式測試
測試平臺:ios&android webkit瀏覽器
測試圖片:彩種雪碧圖1230*82
測試內容:同一張雪碧圖導出不同png格式的大小、透明度、雜邊以及在retina顯示屏和普通顯示屏下的對比
測試結果:
從上圖可見(jiàn)png32和png24體積太大了,十分消耗手機用戶(hù)流量,不是我們選擇的范圍,那么可以鎖定目標在『png8 alpha透明』和『png8 索引透明』中,2者對比,可以看出『png8 alpha』在手機端的支持是良好,可能有童鞋會(huì )認為,單憑一張圖片也不能下結論~
而經(jīng)過(guò)筆者使用多張雪碧圖測試后使用Fireworks導出的『png8 alpha』,在手機端的支持是比較好的~不僅文件體積小,節省流量,而且半透明效果良好
于是,移動(dòng)端采用『png8 alpha透明』,相信『png8 alpha透明』是未來(lái)的一種趨勢~
pC端選擇哪種png
pC端使用哪種png,其實(shí)這個(gè)話(huà)題很早就有結論了,這里簡(jiǎn)單介紹下。
使用png8的方案:
使用photoshop打開(kāi)雪碧圖,分別導出一張png32和一張『png8 索引透明』的圖片,高級瀏覽器使用png32位圖片,針對IE6使用『png8 索引透明』,并設置『png8 索引透明』雜邊與背景色顏色一致可達到視覺(jué)上透明
注:為啥使用png32而不使用『png8 alpha透明』?因為pc端的網(wǎng)速大多良好,建議使用表現更佳的png圖片,顯然png32是最合適的,當然你也可以使用『png8 alpha透明』,但是在高清顯示器下的質(zhì)量不如png32
.bg{
background:url(global.png?v=20130530) no-repeat;
_background:url(global_png8.png?v=20130530) no-repeat;//IE6使用的背景圖
}
使用IE濾鏡的方案:
比較耗性能,而且存在不支持背景平鋪,導致鏈接失效等缺點(diǎn),不推薦該方案,不要為了IE而把自己搞得像IE~
.bg{filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src="img. png", sizingMethod="scale");}
另外還有js和打補丁的辦法,這里不做介紹,大家有興趣可以百度下:IE6支持png24
png的格式、顏色種類(lèi)、位數、透明度、瀏覽器支持一覽
綜合參考來(lái)源:chinaz,百度文庫。
上一篇:
關(guān)于索引量,你必須知道的事更多新聞
2023
作為企業(yè)主,你是否想過(guò)如何使你的網(wǎng)站在搜索引擎結果頁(yè)面上更加顯眼,從而吸引更多的潛在客戶(hù)?天水網(wǎng)站優(yōu)...
View details
2023
環(huán)保網(wǎng)站建設的意義在現代社會(huì )中,環(huán)保成為了一個(gè)全球性的重要議題。。越來(lái)越多的人開(kāi)始關(guān)注環(huán)保問(wèn)題,并且...
View details
2019
手機已經(jīng)成為每個(gè)人生活必不可少的一部分,而移動(dòng)端網(wǎng)站也成為每個(gè)企業(yè)網(wǎng)絡(luò )營(yíng)銷(xiāo)中必要的選擇。但是,由于手機的屏幕比電腦的屏幕小太多,所以在頁(yè)面設計時(shí)會(huì )有許多的限制,雖然不會(huì )
View details
2023
什么是全國網(wǎng)絡(luò )SEO技術(shù)推廣?全國網(wǎng)絡(luò )SEO技術(shù)推廣是一種通過(guò)優(yōu)化網(wǎng)站內容、結構和外部鏈接來(lái)提高網(wǎng)站...
View details